Block Matrix Pseudoinverse
   HOME

TheInfoList



OR:

In
mathematics Mathematics is an area of knowledge that includes the topics of numbers, formulas and related structures, shapes and the spaces in which they are contained, and quantities and their changes. These topics are represented in modern mathematics ...
, a block matrix pseudoinverse is a formula for the pseudoinverse of a partitioned matrix. This is useful for decomposing or approximating many algorithms updating parameters in signal processing, which are based on the
least squares The method of least squares is a standard approach in regression analysis to approximate the solution of overdetermined systems (sets of equations in which there are more equations than unknowns) by minimizing the sum of the squares of the res ...
method.


Derivation

Consider a column-wise partitioned matrix: : \begin\mathbf A & \mathbf B\end,\quad \mathbf A \in \reals^,\quad \mathbf B \in \reals^,\quad m \geq n + p. If the above matrix is full rank, the Moore–Penrose inverse matrices of it and its transpose are :\begin \begin\mathbf A & \mathbf B\end^+ &= \left( \begin\mathbf A & \mathbf B\end^\textsf \begin\mathbf A & \mathbf B\end \right)^ \begin\mathbf A & \mathbf B\end^\textsf, \\ \begin \mathbf A^\textsf \\ \mathbf B^\textsf \end^+ &= \begin\mathbf A & \mathbf B\end \left( \begin\mathbf A & \mathbf B\end^\textsf \begin\mathbf A & \mathbf B\end \right)^. \end This computation of the pseudoinverse requires (''n'' + ''p'')-square matrix inversion and does not take advantage of the block form. To reduce computational costs to ''n''- and ''p''-square matrix inversions and to introduce parallelism, treating the blocks separately, one derives :\begin \begin\mathbf A & \mathbf B\end^+ &= \begin \mathbf P_B^\perp \mathbf A\left(\mathbf A^\textsf \mathbf P_B^\perp \mathbf A\right)^ \\ \mathbf P_A^\perp \mathbf B\left(\mathbf B^\textsf \mathbf P_A^\perp \mathbf B\right)^ \end = \begin \left(\mathbf P_B^\perp\mathbf A\right)^+ \\ \left(\mathbf P_A^\perp\mathbf B\right)^+ \end, \\ \begin \mathbf A^\textsf \\ \mathbf B^\textsf \end^+ &= \begin \mathbf P_B^\perp \mathbf A\left(\mathbf A^\textsf \mathbf P_B^\perp \mathbf A\right)^,\quad \mathbf P_A^\perp \mathbf B\left(\mathbf B^\textsf \mathbf P_A^\perp \mathbf B\right)^ \end = \begin \left(\mathbf A^\textsf \mathbf P_B^\perp\right)^+ & \left(\mathbf B^\textsf \mathbf P_A^\perp\right)^+ \end, \end where orthogonal projection matrices are defined by ::\begin \mathbf P_A^\perp &= \mathbf I - \mathbf A \left(\mathbf A^\textsf \mathbf A\right)^ \mathbf A^\textsf, \\ \mathbf P_B^\perp &= \mathbf I - \mathbf B \left(\mathbf B^\textsf \mathbf B\right)^ \mathbf B^\textsf. \end The above formulas are not necessarily valid if \begin\mathbf A & \mathbf B\end does not have full rank – for example, if \mathbf A \neq 0, then : \begin\mathbf A & \mathbf A\end^+ = \frac\begin \mathbf A^+ \\ \mathbf A^+ \end \neq \begin \left(\mathbf P_A^\perp\mathbf A\right)^+ \\ \left(\mathbf P_A^\perp\mathbf A\right)^+ \end = 0


Application to least squares problems

Given the same matrices as above, we consider the following least squares problems, which appear as multiple objective optimizations or constrained problems in signal processing. Eventually, we can implement a parallel algorithm for least squares based on the following results.


Column-wise partitioning in over-determined least squares

Suppose a solution \mathbf x = \begin \mathbf x_1 \\ \mathbf x_2 \\ \end solves an over-determined system: : \begin \mathbf A, & \mathbf B \end \begin \mathbf x_1 \\ \mathbf x_2 \\ \end = \mathbf d,\quad \mathbf d \in \reals^. Using the block matrix pseudoinverse, we have :\mathbf x = \begin \mathbf A, & \mathbf B \end^+\,\mathbf d = \begin \left(\mathbf P_B^\perp \mathbf A\right)^+ \\ \left(\mathbf P_A^\perp \mathbf B\right)^+ \end\mathbf d. Therefore, we have a decomposed solution: : \mathbf x_1 = \left(\mathbf P_B^\perp \mathbf A\right)^+\,\mathbf d,\quad \mathbf x_2 = \left(\mathbf P_A^\perp \mathbf B\right)^+\,\mathbf d.


Row-wise partitioning in under-determined least squares

Suppose a solution \mathbf x solves an under-determined system: : \begin \mathbf A^\textsf \\ \mathbf B^\textsf \end\mathbf x = \begin \mathbf e \\ \mathbf f \end,\quad \mathbf e \in \reals^,\quad \mathbf f \in \reals^. The minimum-norm solution is given by :\mathbf x = \begin \mathbf A^\textsf \\ \mathbf B^\textsf \end^+\, \begin \mathbf e \\ \mathbf f \end. Using the block matrix pseudoinverse, we have : \mathbf x = \begin \left(\mathbf A^\textsf\mathbf P_B^\perp\right)^+ & \left(\mathbf B^\textsf\mathbf P_A^\perp\right)^+ \end \begin \mathbf e \\ \mathbf f \end = \left(\mathbf A^\textsf\mathbf P_B^\perp\right)^+\,\mathbf e + \left(\mathbf B^\textsf\mathbf P_A^\perp\right)^+\,\mathbf f.


Comments on matrix inversion

Instead of \mathbf \left(\begin\mathbf A & \mathbf B\end^\textsf \begin\mathbf A & \mathbf B\end\right)^, we need to calculate directly or indirectly : \left(\mathbf A^\textsf \mathbf A\right)^,\quad \left(\mathbf B^\textsf \mathbf B\right)^,\quad \left(\mathbf A^\textsf \mathbf P_B^\perp \mathbf A\right)^,\quad \left(\mathbf B^\textsf \mathbf P_A^\perp \mathbf B\right)^. In a dense and small system, we can use singular value decomposition, QR decomposition, or Cholesky decomposition to replace the matrix inversions with numerical routines. In a large system, we may employ iterative methods such as Krylov subspace methods. Considering parallel algorithms, we can compute \left(\mathbf A^\textsf \mathbf A\right)^ and \left(\mathbf B^\textsf \mathbf B\right)^ in parallel. Then, we finish to compute \left(\mathbf A^\textsf \mathbf P_B^\perp \mathbf A\right)^ and \left(\mathbf B^\textsf \mathbf P_A^\perp \mathbf B\right)^ also in parallel.


See also

*


References


External links


The Matrix Reference Manual
b



b
John Burkardt

The Matrix Cookbook
b
Kaare Brandt Petersen

Lecture 8: Least-norm solutions of undetermined equations
b
Stephen P. Boyd
{{DEFAULTSORT:Block Matrix Pseudoinverse Numerical linear algebra Matrix theory